package thread;

/**
 * java中所有的代码都是线程执行的，main方法也不例外，执行main方法的线程是由JVM启动后自行创建
 * 的，并且为其命名为"main"。因此我们称执行main方法的线程为"主线程"
 */
public class CurrentThreadDemo {
    public static void main(String[] args) {
        //哪个线程执行该方法获取的就是哪个线程
        Thread main = Thread.currentThread();
        System.out.println("主线程:"+main);
        showThreadInfo();//主线程执行该方法
    }

    public static void showThreadInfo(){
        //执行showThreadInfo方法的线程
        Thread t = Thread.currentThread();
        System.out.println("执行showThreadInfo方法的线程:"+t);

        String name = t.getName();//获取线程的名字
        System.out.println("名字:"+name);

        long id = t.getId();//获取线程的唯一标识
        System.out.println("唯一表示:"+id);

        int priority = t.getPriority();//获取线程优先级
        System.out.println("优先级:"+priority);

        boolean isAlive = t.isAlive();//线程是否活着
        boolean isDaemon = t.isDaemon();//线程是否为守护线程
        boolean isInterrupted = t.isInterrupted();//线程是否被中断

        System.out.println("是否活着:"+isAlive);
        System.out.println("是否为守护线程:"+isDaemon);
        System.out.println("是否被中断:"+isInterrupted);
    }
}




